如果你是Java、C#等高階程式語言的愛好者,對於前端的語言技術(PHP、JSP、ASP...)又沒那麼熟悉或是有所障礙的人,在這裡我要告訴你一個福音~ Apache Royale會是你的一個好選擇!
Apache Royale的前身是Adobe Flex,Flex是一個基於Adobe Flash平台,用以開發和部署RIA(Rich Internet Applications)的SDK。於2011年將之捐獻給Apache軟體基金會,在2012年推動成為首要項目。 幾年前Adobe宣布對Flash的更新與支援只到2020,也正式宣告曾經稱霸網路世界的Flash即將落幕,想當然之許多Flex的程式設計師開始跳船轉向到其他的架構上。
幾年過後,當初Apache發布出FlexJS(我記得好像0.8版),輸出的格式以HTML5方式來呈現,到如今正式以Royale的名稱預備出道。Royale目前版本已經來到0.9.4,距離正式完整的版本已經相差不遠,作者我這邊也逐漸開始把手邊的專案轉向到用Royale開發。
回到我們的主題~ Why Apache Royale? 如果你長久下來習慣在後端的開發,那麼Apache Royale作為你的前端技術開發會是個很棒的選擇!!
Royale延續Flex採用ActionScript3.0 作為程式設計的語言,介面的描述則使用基於XML的MXML語言。在Script語言的部分我個人覺得非常親切呢!! 以下就來個一段經典的Hello World
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:mx="library://ns.apache.org/royale/mx">
<fx:Script>
<![CDATA[
public function MyTest():void
{
lab.text = "Hello Royale!";
}
]]>
</fx:Script>
<mx:Label id="lab" x="10" y="10" text="click the button"/>
<mx:Button id="but" x="10" y="70" width="100" height="25" label="Button" click="MyTest()" />
</mx:Application>
在我的開發經驗裡,從Java、C#等高階語言轉換到Flex or Royale會相對簡單,因為對於介面的描述採MXML的方式。如上方程式碼所示,Script的區域在於用ActionScript來做程式的處理運算,其格式內容與我們所學習的基礎程式語言也大同小異。介面的部分描述也很直譯,各樣的參數的設定,位置的描述定義等...
然後~ 再從Flex or Royale跳到Android 你會發現有種很熟悉的感覺。Android的架構大概就是分為XML的介面(layout)描述以及程式的運算處理(Java base) 整個就跟Flex/Royale很像阿!! 想當年我看著JSP就是一副冷眼死的樣子... 更別提C語言Base的PHP... 囧rz
總之結論呢~ 在我的經驗裡 Royale能夠讓你很快速/方便有效的打造出完整個前端介面!! 絕對會是你的好選擇 ^^
目前版本是0.9.4,許多的人也開始投入在這塊新大陸中,期待你也加入進來一起體驗!! 在我的Blog中將會陸續的我測試的相關內容跟大家分享,讓大家能夠開開心心的enjoy 在其中 ^^